﻿$(function () {

    $("#cmbCentrosOrigen").change(function GetFuentesPorCentro() {
        var id = $('#cmbCentrosOrigen').val();

        if (id != 'Seleccione') {
            var combo = document.getElementById("cmbCentrosOrigen");
            var selected = combo.options[combo.selectedIndex].text;
            $("#CentroCostoOrigen").val(selected);

            $.ajax({
                url: 'GetFuentesPorCentro/' + id,
                data: { id: id },
                dataType: "json",
                type: "POST",
                error: function () {
                    $("#cmbFuentesOrigen").html("<option>Seleccione</option>");
                },
                success: function (data) {
                    var items = "<option>Seleccione</option>";
                    $.each(data, function (i, item) {
                        items += "<option value=\"" + item.Value + "\">" + item.Text + "</option>";
                    });
                    $("#cmbFuentesOrigen").html(items);
                }
            });
        }
        else {
            $("#cmbFuentesOrigen").html("<option>Seleccione</option>");
        }
    });

    $("#cmbCentrosDestino").change(function GetFuentesPorCentro() {
        var id = $('#cmbCentrosDestino').val();

        if (id != 'Seleccione') {
            var combo = document.getElementById("cmbCentrosDestino");
            var selected = combo.options[combo.selectedIndex].text;
            $("#CentroCostoDestino").val(selected);

            $.ajax({
                url: 'GetFuentesPorCentro/' + id,
                data: { id: id },
                dataType: "json",
                type: "POST",
                error: function () {
                    $("#cmbFuentesDestino").html("<option> Seleccione </option>");
                },
                success: function (data) {
                    var items = "<option> Seleccione </option>";
                    $.each(data, function (i, item) {
                        items += "<option value=\"" + item.Value + "\">" + item.Text + "</option>";
                    });
                    $("#cmbFuentesDestino").html(items);
                }
            });
        }
        else
            $("#cmbFuentesDestino").html("<option>Seleccione</option>");
    });

    $("#cmbFuentesOrigen").change(function GetFuentesPorCentro() {
        var id = $('#cmbFuentesOrigen').val();

        if (id != 'Seleccione') {
            var combo = document.getElementById("cmbFuentesOrigen");
            var selected = combo.options[combo.selectedIndex].text;
            $("#FuenteFinancieraOrigen").val(selected);

            $.ajax({
                url: 'GetPartidasPorFuente/' + id,
                data: { id: id },
                dataType: "json",
                type: "POST",
                error: function () {
                    $("#cmbPartidasOrigen").html("<option> Seleccione </option>");
                    $("#IdOrigen").val(id);
                },
                success: function (data) {
                    var items = "<option> Seleccione </option>";
                    $.each(data, function (i, item) {
                        items += "<option value=\"" + item.Value + "\">" + item.Text + "</option>";
                    });
                    $("#cmbPartidasOrigen").html(items);
                }
            });
        }
        else {
            $("#cmbPartidasOrigen").html("<option> Seleccione </option>");
            $("#FuenteFinancieraOrigen").val('');
            $("#IdOrigen").val(id);
        }
    });

    $("#cmbFuentesDestino").change(function GetFuentesPorCentro() {
        var id = $('#cmbFuentesDestino').val();

        if (id != 'Seleccione') {

            var combo = document.getElementById("cmbFuentesDestino");
            var selected = combo.options[combo.selectedIndex].text;
            $("#FuenteFinancieraDestino").val(selected);

            $.ajax({
                url: 'GetPartidasPorFuente/' + id,
                data: { id: id },
                dataType: "json",
                type: "POST",
                error: function () {
                    $("#IdDestino").val(0);
                    $("#cmbPartidasDestino").html("<option> Seleccione </option>");
                },
                success: function (data) {
                    var items = "<option> Seleccione </option>";
                    $.each(data, function (i, item) {
                        items += "<option value=\"" + item.Value + "\">" + item.Text + "</option>";
                    });
                    $("#cmbPartidasDestino").html(items);
                }
            });
        }
        else {
            $("#cmbPartidasDestino").html("<option> Seleccione </option>");
            $("#FuenteFinancieraDestino").val('');
            $("#IdDestino").val(0);
        }
    });

    $("#cmbPartidasOrigen").change(function () {
        var id = $('#cmbPartidasOrigen').val();

        if (id != 'Seleccione') {

            $("#IdOrigen").val(id);

            var combo = document.getElementById("cmbPartidasOrigen");
            var selected = combo.options[combo.selectedIndex].text;
            $("#PartidaOrigen").val(selected);

            if (id != '')
                $.ajax({
                    url: 'GetPartidaById',
                    data: { id: id },
                    dataType: "json",
                    type: "POST",
                    error: function () {
                        $("#IdOrigen").val(0);
                        $("#PartidaOrigen").val('');
                        $("#MontoActualOrigen").val(0);
                    },
                    success: function (data) {
                        $("#MontoActualOrigen").val(data.Monto);
                    }
                });
        }
        else {
            $("#IdOrigen").val(0);
            $("#PartidaOrigen").val('');
            $("#MontoActualOrigen").val(0);
        }
    });

    $("#cmbPartidasDestino").change(function () {
        var id = $('#cmbPartidasDestino').val();

        if (id != 'Seleccione') {

            $("#IdDestino").val(id);

            var combo = document.getElementById("cmbPartidasDestino");
            var selected = combo.options[combo.selectedIndex].text;
            $("#PartidaDestino").val(selected);

            if (id != '')
                $.ajax({
                    url: 'GetPartidaById',
                    data: { id: id },
                    dataType: "json",
                    type: "POST",
                    error: function () {
                        $("#IdDestino").val(0);
                        $("#PartidaDestino").val('');
                        $("#MontoActualDestino").val(0);
                    },
                    success: function (data) {
                        $("#MontoActualDestino").val(data.Monto);
                    }
                });
        }
        else {
            $("#IdDestino").val(0);
            $("#PartidaDestino").val('');
            $("#MontoActualDestino").val(0);
        }
    });

    $("#btnGuardar").click(function () {
        verbo = "POST";
        if (verbo != "") {
            var Modelo = new Object();
            Modelo.NroResolucion = $("#NroResolucion").val();
            Modelo.Fecha = Date.now();
            Modelo.IdOrigen = $("#IdOrigen").val();
            Modelo.IdDestino = $("#IdDestino").val();
            Modelo.Monto = $("#Monto").val();

            console.log(Modelo);

            pleaseWaitDiv = '<div class="modal hide" id="pleaseWaitDialog" data-backdrop="static" data-keyboard="false"><div class="modal-header"><h1>Processing...</h1></div><div class="modal-body"><div class="progress progress-striped active"><div class="bar" style="width: 100%;"></div></div></div></div>';

            $.ajax({
                url: 'CambiarPresupuesto',
                type: verbo,
                data: JSON.stringify(Modelo),
                contentType: "application/json; charset=utf-8",
                beforeSend: function () {
                    pleaseWaitDiv.fixed();
                },
                succcess: {
                }
            })
            .done(function (response) {
                var succes = '<div  class="alert alert-block alert-success messageconfir"><a class="close" data-dismiss="alert" href="#"><i class="icon-remove"></i></a>' + response.message + '</div> ';
                var error = '<div  class="alert alert-block alert-danger messageconfir"><a class="close" data-dismiss="alert" href="#"><i class="icon-remove"></i></a>' + response.message + '</div> ';
                $("#FormAjaxSubmitNotifications").show();
                if (response.success) {
                    $('#FormAjaxSubmitNotifications').html(succes);
                    LimpiarCampos();
                }
                else
                    $('#FormAjaxSubmitNotifications').html(error);

                $('html,body').animate({ scrollTop: $("#FormAjaxSubmitNotifications").offset().top }, 500);
                setTimeout(function () { $('#FormAjaxSubmitNotifications').fadeOut('fast'); }, 3000);
            });
            ;
        }
    });


    function LimpiarCampos() {
        $("#Presupuesto").val(0);
        $("#Saldo").val(0);

        $("#PartidaSeleccionada").val("");
        $("#IdPartida").val(0);
        $("#IdFuenteFinanciera").val(0);
        $("#MontoAsignado").val(0);
        //$("#MontoGastado").val(0);
        //$("#Saldo").val(0);
    }

});